package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 出勤汇总表对象 attendance
 *
 * @author ruoyi
 * @date 2023-10-18
 */
public class Attendance extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    private Long id;

    /** 员工编号 */
    @Excel(name = "员工编号")
    private String eno;

    /** 部门id */
    @Excel(name = "部门id")
    private Long deptId;

    /** 职位id */
    @Excel(name = "职位id")
    private Long postId;

    /** 应出勤天数 */
    @Excel(name = "应出勤天数")
    private Long attenDays;

    /** 实际出勤天数 */
    @Excel(name = "实际出勤天数")
    private Long attenSdays;

    /** 工作时长(单位小时) */
    @Excel(name = "工作时长(单位小时)")
    private Long workTime;

    /** 休息天数 */
    @Excel(name = "休息天数")
    private Long restDays;

    /** 迟到次数 */
    @Excel(name = "迟到次数")
    private Long lateCount;

    /** 早退次数 */
    @Excel(name = "早退次数")
    private Long leaveEarly;

    /** 旷工天数 */
    @Excel(name = "旷工天数")
    private String absenteeismDays;

    /** 日期 */
    @JsonFormat(pattern = "yyyy-MM")
    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM")
    private Date date;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setEno(String eno)
    {
        this.eno = eno;
    }

    public String getEno()
    {
        return eno;
    }
    public void setDeptId(Long deptId)
    {
        this.deptId = deptId;
    }

    public Long getDeptId()
    {
        return deptId;
    }
    public void setPostId(Long postId)
    {
        this.postId = postId;
    }

    public Long getPostId()
    {
        return postId;
    }
    public void setAttenDays(Long attenDays)
    {
        this.attenDays = attenDays;
    }

    public Long getAttenDays()
    {
        return attenDays;
    }
    public void setAttenSdays(Long attenSdays)
    {
        this.attenSdays = attenSdays;
    }

    public Long getAttenSdays()
    {
        return attenSdays;
    }
    public void setWorkTime(Long workTime)
    {
        this.workTime = workTime;
    }

    public Long getWorkTime()
    {
        return workTime;
    }
    public void setRestDays(Long restDays)
    {
        this.restDays = restDays;
    }

    public Long getRestDays()
    {
        return restDays;
    }
    public void setLateCount(Long lateCount)
    {
        this.lateCount = lateCount;
    }

    public Long getLateCount()
    {
        return lateCount;
    }
    public void setLeaveEarly(Long leaveEarly)
    {
        this.leaveEarly = leaveEarly;
    }

    public Long getLeaveEarly()
    {
        return leaveEarly;
    }
    public void setAbsenteeismDays(String absenteeismDays)
    {
        this.absenteeismDays = absenteeismDays;
    }

    public String getAbsenteeismDays()
    {
        return absenteeismDays;
    }
    public void setDate(Date date)
    {
        this.date = date;
    }

    public Date getDate()
    {
        return date;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("eno", getEno())
            .append("deptId", getDeptId())
            .append("postId", getPostId())
            .append("attenDays", getAttenDays())
            .append("attenSdays", getAttenSdays())
            .append("workTime", getWorkTime())
            .append("restDays", getRestDays())
            .append("lateCount", getLateCount())
            .append("leaveEarly", getLeaveEarly())
            .append("absenteeismDays", getAbsenteeismDays())
            .append("date", getDate())
            .toString();
    }
}
